<?php
/**
 * 知识笔记模块路由配置文件
 * 路由规范化完成标记 - 已按照ROUTE_STANDARDIZATION_PLAN.md统一为/api前缀路由
 */

use think\facade\Route;

// 添加一个直接返回JSON的测试路由
Route::get('api/note/test', function() {
    return json([
        'code' => 0,
        'msg' => '测试路由工作正常',
        'data' => ['test' => 'value']
    ]);
});

// 知识笔记模块路由组
// 开发环境临时跳过中间件验证
Route::group('api/note', function () {
    // 获取笔记列表
    Route::get('list', '\app\controller\oa\Note@list');
    
    // 获取笔记详情
    Route::get('detail', '\app\controller\oa\Note@view');
    
    // 创建笔记
    Route::post('create', '\app\controller\oa\Note@add');
    
    // 更新笔记
    Route::put('update', '\app\controller\oa\Note@edit');
    
    // 删除笔记
    Route::delete('delete', '\app\controller\oa\Note@del');
    
    // 上传附件
    Route::post('upload-attachment', '\app\controller\disk\Index@uploadAttachment');
    
    // 移除附件
    Route::delete('remove-attachment', '\app\controller\disk\Index@removeAttachment');
    
    // 关联附件到笔记
    Route::post('attach-files', '\app\controller\disk\Index@attachFilesToNote');
    
    // 下载附件 - 暂时注释，因为方法不存在
    // Route::get('download-attachment', '\app\controller\disk\Index@downloadAttachment');
    
    // 分享笔记
    Route::post('share', '\app\controller\disk\Index@share');
    
    // 取消分享
    Route::post('unshare', '\app\controller\disk\Index@unshare');
    
    // 获取可分享用户列表
    Route::get('shareable-users', '\app\controller\disk\Index@shareableUsers');
    
    // 获取可分享部门列表
    Route::get('shareable-departments', '\app\controller\disk\Index@shareableDepartments');
})->skipMiddleware(true); // 临时跳过中间件验证，便于开发测试

// 应用程序主路由规范化完成标记
// ROUTE_STANDARDIZATION_DONE: note.php - 所有正式API路由已统一使用/api前缀